package com.marvels.financial.pay.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.marvels.common.dto.pay.McfePaymentUserBindCard;
import com.marvels.common.dto.pay.McfeSetDefaultCardLog;
import com.marvels.financial.pay.dto.McfePaymentUserBindCardCondition;

public interface McfePaymentUserBindCardMapper {
    int deleteByPrimaryKey(Long id);

    int insert(McfePaymentUserBindCard record);

    int insertSelective(McfePaymentUserBindCard record);

    McfePaymentUserBindCard selectByPrimaryKey(Long id);
    
    McfePaymentUserBindCard selectByCondition(McfePaymentUserBindCardCondition condition);
    
    List<McfePaymentUserBindCard> selectListByIdno(@Param("idno")String idno,@Param("channel")String channel,@Param("unbindStatus")String unbindStatus);
    
    List<McfePaymentUserBindCard> selectBankListByIdno(@Param("idno") String idno,@Param("currentChannel") String currentChannel,@Param("unbindStatus")String unbindStatus);
    
    List<McfePaymentUserBindCard> selectBindSuccessListByIdno(@Param("idno")String idno,@Param("channel")String channel);


    int updateByPrimaryKeySelective(McfePaymentUserBindCard record);

    int updateByPrimaryKey(McfePaymentUserBindCard record);
    
    
    
    /**
     * 查询绑卡信息
     * @param bindCard
     * @return
     */
    McfePaymentUserBindCard selectBindCard(McfePaymentUserBindCard bindCard);
    
    /**
     * 设置默认卡
     * @param id
     * @return
     */
    int updateDefaultCard(McfePaymentUserBindCard bindCard);
    
    /**
     * 记录设置日志
     * @param mcfeSetDefaultCardLog
     * @return
     */
    int insertSetDefaultCardLog(McfeSetDefaultCardLog mcfeSetDefaultCardLog);
}